
; Generated by gcc 2.95.2 19991024 (release) for ARM/RISC OS

 get fpmacros.s

 AREA |C$$code1|, CODE, READONLY
 ALIGN
|L..9|
 DCD |enwindow|+80

|window_subband|
 ; frame = 464, frame_needed = 1
 mov r12, r13
 stmfd r13!, {r4 - r9, r11, r12, r14, r15}
 sub r11, r12, #4
  sub r12, r13, #(36*12)
 cmp r12, r10
 bllt |__rt_stkovf_split_big|
 sub r2, r0, #248
 mvn r4, #14
 ldr r3, |L..9|
 mov r13, r12
 mov r9, r12

|L..6|
 add r12, r1, r4, lsl #4
  stmfd r13!, {r0 - r4}
 _ldfs   , r0, #896     ; ldfs f3, [r0, #896]
 _ldfd2 f2, r3, #-80    ; ldfd f2, [r3, #-80]
 _mufd f0,   ,          ; mufd f0, f3, f2
 _ldfs   , r2, #-896    ; ldfs f3, [r2, #-896]
 _mufd f1,   , f2       ; mufd f1, f3, f2
 _ldfs   , r0, #640     ; ldfs f3, [r0, #640]
 _ldfd2 f2, r3, #-72    ; ldfd f2, [r3, #-72]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #-640    ; ldfs f3, [r2, #-640]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #384     ; ldfs f3, [r0, #384]
 _ldfd2 f2, r3, #-64    ; ldfd f2, [r3, #-64]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #-384    ; ldfs f3, [r2, #-384]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #128     ; ldfs f3, [r0, #128]
 _ldfd2 f2, r3, #-56    ; ldfd f2, [r3, #-56]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #-128    ; ldfs f3, [r2, #-128]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #-128    ; ldfs f3, [r0, #-128]
 _ldfd2 f2, r3, #-48    ; ldfd f2, [r3, #-48]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #128     ; ldfs f3, [r2, #128]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #-384    ; ldfs f3, [r0, #-384]
 _ldfd2 f2, r3, #-40    ; ldfd f2, [r3, #-40]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #384     ; ldfs f3, [r2, #384]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #-640    ; ldfs f3, [r0, #-640]
 _ldfd2 f2, r3, #-32    ; ldfd f2, [r3, #-32]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #640     ; ldfs f3, [r2, #640]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r0, #-896    ; ldfs f3, [r0, #-896]
 _ldfd2 f2, r3, #-24    ; ldfd f2, [r3, #-24]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f0,   , f0       ; adfd f0, f3, f0
 _ldfs   , r2, #896     ; ldfs f3, [r2, #896]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #1024    ; ldfs f3, [r2, #1024]
 _ldfd2 f2, r3, #-16    ; ldfd f2, [r3, #-16]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #-1024   ; ldfs f3, [r0, #-1024]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #768     ; ldfs f3, [r2, #768]
 _ldfd2 f2, r3, #-8     ; ldfd f2, [r3, #-8]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #-768    ; ldfs f3, [r0, #-768]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #512     ; ldfs f3, [r2, #512]
 _ldfd2 f2, r3, #0      ; ldfd f2, [r3, #0]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #-512    ; ldfs f3, [r0, #-512]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #256     ; ldfs f3, [r2, #256]
 _ldfd2 f2, r3, #8      ; ldfd f2, r3, #8
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #-256    ; ldfs f3, [r0, #-256]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #0       ; ldfs f3, [r2, #0]
 _ldfd2 f2, r3, #16     ; ldfd f2, [r3, #16]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #0       ; ldfs f3, [r0, #0]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #-256    ; ldfs f3, [r2, #-256]
 _ldfd2 f2, r3, #24     ; ldfd f2, [r3, #24]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #256     ; ldfs f3, [r0, #256]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #-512    ; ldfs f3, [r2, #-512]
 _ldfd2 f2, r3, #32     ; ldfd f2, [r3, #32]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #512     ; ldfs f3, [r0, #512]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd f1,   , f1       ; adfd f1, f3, f1
 _ldfs   , r2, #-768    ; ldfs f3, [r2, #-768]
 _ldfd2 f2, r3, #40     ; ldfd f2, [r3, #40]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _rsfd f0,   , f0       ; rsfd f0, f3, f0
 _ldfs   , r0, #768     ; ldfs f3, [r0, #768]
 _mufd   ,   , f2       ; mufd f3, f3, f2
 _adfd   ,   , f1       ; adfd f1, f3, f1
 _ldfd2 f2, r3, #48     ; ldfd f2, [r3, #48]
 _mufd f1,   , f2       ; mufd f1, f1, f2
 _adfd   ,   , f0       ; adfd f3, f1, f0
 _stfd   , r12, #240    ; stfd f3, [r12, #240]
 _sufd   , f0, f1       ; sufd f0, f0, f1
 _ldfd2  , r3, #56      ; ldfd f3, [r3, #56]
 _mufd   ,   ,          ; mufd f3, f0, f3
 _stfd   , r12, #248    ; stfd f3, [r12, #248]
  ldmfd r13!, {r0 - r4}
 sub r0, r0, #4
 add r2, r2, #4
 add r3, r3, #144
 adds r4, r4, #1
  bmi |L..6|

 sub r12, r3, #1536
  stmfd r13!, {r0 - r3, r10}
  adrl r10, |L..12|
 _ldfs   , r0, #-64     ; ldfs f0, [r0, #-64]
 _ldfd2  , r3, #-80     ; ldfd f1, [r3, #-80]
 _mufd f4,   ,          ; mufd f4, f0, f1       ; t  =  x1[- 16] * wp[-10]
 _ldfs   , r0, #-192    ; ldfs f0, [r0, #-192]
 _ldfs2  , r0, #64      ; ldfs f1, [r0, #64]
 _sufs   ,   ,          ; sufs f0, f0, f1
 _ldfd2  , r3, #-72     ; ldfd f1, [r3, #-72]
 _mufd   ,   ,          ; mufd f0, f0, f1
 _adfd f4,   , f4       ; adfd f4, f0, f4       ; t += (x1[- 48] - x1[ 16]) * wp[-9]
 _ldfs   , r0, #-320    ; ldfs f0, [r0, #-320]
 _ldfs2  , r0, #192     ; ldfs f1, [r0, #192]
 _adfs   ,   ,          ; adfs f0, f0, f1
 _ldfd2  , r3, #-64     ; ldfd f1, [r3, #-64]
 _mufd   ,   ,          ; mufd f0, f0, f1
 _adfd f4,   , f4       ; adfd f4, f0, f4       ; t += (x1[- 80] + x1[ 48]) * wp[-8]
 _ldfs   , r0, #-448    ; ldfs f0, [r0, #-448]
 _ldfs2  , r0, #320     ; ldfs f1, [r0, #320]
 _sufs   ,   ,          ; sufs f1, f0, f1
 _ldfd2  , r3, #-56     ; ldfd f0, [r3, #-56]
 _mufd   ,   ,          ; mufd f0, f1, f0
 _adfd f4,   , f4       ; adfd f4, f0, f4       ; t += (x1[-112] - x1[ 80]) * wp[-7]
 _ldfs   , r0, #-576    ; ldfs f1, [r0, #-576]
 _ldfs2  , r0, #448     ; ldfs f2, [r0, #448]
 _adfs   ,   ,          ; adfs f1, f1, f2
 _ldfd2  , r3, #-48     ; ldfd f0, [r3, #-48]
 _mufd f1,   ,          ; mufd f1, f1, f0
 _adfd f4, f1, f4       ; t += (x1[-144] + x1[112]) * wp[-6]
 _ldfs f1, r0, #-704    ; ldfs f1, [r0, #-704]
 _ldfs2  , r0, #576     ; ldfs2 f2, [r0, #576]
 _sufs   ,   ,          ; sufs f1, f1, f2
 _ldfd2  , r3, #-40     ; ldfd f0, [r3, #-40]
 _mufd   ,   ,          ; mufd f1, f1, f0
 _adfd f4,   , f4       ; t += (x1[-176] - x1[144]) * wp[-5]
 _ldfs f1, r0, #-832
 _ldfs f2, r0, #704
 _adfs f1, f1, f2
 _ldfd f0, r3, #-32
 _mufd f1, f1, f0
 _adfd f4, f1, f4       ; t += (x1[-208] + x1[176]) * wp[-4]
 _ldfs f1, r0, #-960
 _ldfs f2, r0, #832
 _ldfd f0, r3, #-24
 _sufs f1, f1, f2
 _mufd f1, f1, f0
 _adfd f4, f4, f1       ; t += (x1[-240] - x1[208]) * wp[-3]
 _ldfs f1, r0, #-128
 _ldfd f3, r3, #-16
 _mufd f3, f1, f3       ; s  = x1[ -32] * wp[-2]
 _ldfs f0, r0, #-384
 _ldfd f1, r3, #-8
 _mufd f0, f0, f1
 _adfd f3, f0, f3        ; s += x1[ -96] * wp[-1]
 _ldfs f0, r0, #-640
 _ldfd f1, r3, #0
 _mufd f0, f0, f1
 _adfd f3, f0, f3        ; s += x1[-160] * wp[ 0]
 _ldfs f0, r0, #-896
 _ldfd f1, r3, #8
 _mufd f0, f0, f1
 _adfd f3, f0, f3        ; s += x1[-224] * wp[ 1]
 _ldfs f0, r0, #128
 _ldfd f1, r3, #16
 _mufd f0, f0, f1
 _rsfd f3, f0, f3        ; s -= x1[  32] * wp[ 2]
 _ldfs f0, r0, #384
 _ldfd f1, r3, #24
 _mufd f0, f0, f1
 _rsfd f3, f0, f3        ; s -= x1[  96] * wp[ 3]
 _ldfs f0, r0, #640
 _ldfd f1, r3, #32
 _mufd f0, f0, f1
 _rsfd f3, f0, f3        ; s -= x1[ 160] * wp[ 4]
 _ldfs f0, r0, #896
 _sufd f3, f3, f0        ; s -= x1[ 224]
 _sufd f1, f3, f4        ; u = s - t
 _adfd f2, f3, f4        ; v = s + t
 _ldfd f4, r1, #112      ; t = a[14]
 _ldfd f0, r1, #120
 _sufd f3, f0, f4        ; s = a[15] - t
 _adfd f0, f3, f1
 _stfd f0, r1, #240      ; a[30] = u + s;    A1
 _sufd f0, f1, f3
 _stfd f0, r1, #120      ; a[15] = u - s;    A2
 _adfd f35, f2, f4       ; a[31] = v + t;    A0
 _sufd f33, f2, f4       ; a[14] = v - t;    A3
 _ldfd f0, r1, #0
 _ldfd f1, r1, #224
 _adfd f19, f0, f1
 _sufd f1, f1, f0
 _ldfd f2, r1, #8
 _ldfd f3, r1, #232
 _adfd f20, f2, f3
 _ldfd f6, r3, #-232
 _mufd f0, f1, f6
 _stfd f0, r1, #224
 _ldfd f0, r1, #16
 _ldfd f4, r1, #208
 _adfd f5, f0, f4
 _stfd f5, r1, #16
 _sufd f4, f4, f0
 _sufd f3, f3, f2
 _mufd f32, f3, f6
 _ldfd f1, r1, #24
 _ldfd f3, r1, #216
 _adfd f5, f1, f3
 _stfd f5, r1, #24
 _sufd f3, f3, f1
 _ldfd f7, r3, #-520
 _mufd f2, f4, f7
 _stfd f2, r1, #208
 _ldfd f2, r1, #32
 _ldfd f4, r1, #192
 _adfd f21, f2, f4
 _mufd f0, f3, f7
 _stfd f0, r1, #216
 _ldfd f0, r1, #40
 _ldfd f1, r1, #200
 _adfd f22, f0, f1
 _sufd f4, f4, f2
 _ldfd f7, r3, #-808
 _mufd f28, f4, f7
 _sufd f1, f1, f0
 _mufd f26, f1, f7
 _ldfd f1, r1, #48
 _ldfd f2, r1, #176
 _adfd f0, f1, f2
 _sufd f27, f35, f0
 _adfd f35, f35, f0
 _sufd f2, f2, f1
 _ldfd f4, r1, #56
 _ldfd f5, r1, #184
 _adfd f3, f4, f5
 _sufd f0, f3, f0
 _ldfd f7, r1, #240
 _sufd f29, f7, f0
 _adfd f7, f7, f0
 _stfd f7, r1, #240
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f1, f2,           ; mufd f1, f2, sqrt(2)
 _sufd f1, f1, f0
 _ldfd f7, r1, #120
 _sufd f31, f7, f1
 _sufd f5, f5, f4
 _ldfd f0, r1, #120
 _adfd f8, f0, f1
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f0, f5,           ; mufd f0, f5, sqrt(2)
 _sufd f0, f0, f3
 _sufd f0, f0, f1
 _sufd f1, f33, f0
 _stfd f1, r1, #184
 _adfd f33, f33, f0
 _ldfd f0, r1, #64
 _ldfd f1, r1, #160
 _adfd f13, f0, f1
 _sufd f1, f1, f0
 _ldfd f4, r1, #72
 _ldfd f5, r1, #168
 _adfd f30, f4, f5
 _ldfd f2, r12, #152
 _mufd f3, f1, f2
 _ldfd f0, r1, #80
 _ldfd f1, r1, #144
 _adfd f6, f0, f1
 _stfd f6, r1, #80
 _sufd f5, f5, f4
 _mufd f25, f5, f2
 _ldfd f4, r1, #88
 _ldfd f5, r1, #152
 _adfd f7, f4, f5
 _stfd f7, r1, #88
 _sufd f1, f1, f0
 _ldfd f6, r12, #-136
 _mufd f24, f1, f6
 _sufd f5, f5, f4
 _ldfd f0, r1, #96
 _ldfd f1, r1, #128
 _adfd f34, f0, f1
 _mufd f7, f5, f6
 _stfd f7, r1, #152
 _sufd f1, f1, f0
 _ldfd f4, r12, #-424
 _mufd f18, f1, f4
 _ldfd f0, r1, #104
 _ldfd f1, r1, #136
 _adfd f16, f0, f1
 _sufd f1, f1, f0
 _adfd f17, f3, f28
 _mufd f1, f1, f4
 _sufd f3, f28, f3
 _mufd f5, f3, f6
 _sufd f2, f26, f25
 _mufd f3, f2, f6
 _adfd f25, f25, f26
 _sufd f2, f21, f13
 _adfd f21, f21, f13
 _mufd f13, f2, f6
 _sufd f4, f22, f30
 _adfd f22, f22, f30
 _mufd f4, f4, f6
 _sufd f0, f19, f34
 _adfd f19, f19, f34
 _ldfd f7, r3, #-520
 _mufd f34, f0, f7
 _ldfd f2, r1, #224
 _adfd f9, f18, f2
 _sufd f0, f20, f16
 _adfd f20, f20, f16
 _mufd f16, f0, f7
 _adfd f23, f1, f32
 _ldfd f0, r1, #224
 _sufd f2, f18, f0
 _mufd f0, f2, f7
 _stfd f0, r1, #224
 _sufd f1, f32, f1
 _mufd f18, f1, f7
 _ldfd f1, r1, #208
 _sufd f0, f1, f24
 _adfd f10, f24, f1
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f0, f0,           ; mufd f0, f0, sqrt(2)
 _sufd f11, f0, f10
 _ldfd f1, r1, #216
 _ldfd f6, r1, #152
 _sufd f0, f1, f6
 _adfd f12, f6, f1
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f2, f0,           ; mufd f2, f0, sqrt(2)
 _sufd f14, f2, f12
 _sufd f0, f13, f34
 _adfd f13, f13, f34
 ldmia r10, {r3 - r5}    ; sqrt(2)
 eor r3, r3, #1<<31
 _mufd f2, f0,           ; mufd f2, f0, -sqrt(2)
 _sufd f15, f2, f13
 _sufd f0, f4, f16
 ldmia r10, {r3 - r5}    ; sqrt(2)
 eor r3, r3, #1<<31
 _mufd f0, f0,           ; mufd f0, f0, -sqrt(2)
 _adfd f4, f4, f16
 _sufd f16, f0, f4
 _sufd f0, f3, f18
 ldmia r10, {r3 - r5}    ; sqrt(2)
 eor r3, r3, #1<<31
 _mufd f0, f0,           ; mufd f0, f0, -sqrt(2)
 _adfd f3, f3, f18
 _sufd f6, f0, f3
 _ldfd f7, r1, #224
 _adfd f0, f5, f7
 ldmia r10, {r3 - r5}    ; sqrt(2)
 eor r3, r3, #1<<31
 _mufd f2, f0,           ; mufd f2, f0, -sqrt(2)
 _sufd f5, f5, f7
 _adfd f7, f9, f17
 _sufd f0, f9, f17
 _sufd f1, f2, f5
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f0, f0,           ; mufd f0, f0, sqrt(2)
 _sufd f5, f5, f7
 _sufd f17, f0, f5
 _sufd f0, f1, f17
 _stfd f0, r1, #224
 _sufd f0, f23, f25
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f0, f0,           ; mufd f0, f0, sqrt(2)

 _adfd f23, f23, f25
 _sufd f3, f3, f23
 _sufd f25, f0, f3
 _sufd f32, f6, f25

 _adfd f6, f20, f22
 _sufd f23, f23, f6
 _sufd f0, f20, f22
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f22, f0,          ; mufd f22, f0, sqrt(2)

 _sufd f30, f4, f23
 _sufd f26, f3, f30
 _sufd f22, f22, f26
 _sufd f25, f25, f22
 _sufd f16, f16, f25
 _sufd f32, f32, f16

 _adfd f3, f19, f21
 _sufd f6, f6, f3
 _sufd f0, f19, f21
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f21, f0,          ; mufd f21, f0, sqrt(2)

 _sufd f18, f7, f6
 _sufd f23, f23, f18
 _sufd f13, f13, f23
 _sufd f30, f30, f13
 _sufd f28, f5, f30
 _sufd f26, f26, f28
 _sufd f21, f21, f26
 _sufd f22, f22, f21
 _sufd f17, f17, f22
 _sufd f25, f25, f17
 _sufd f34, f15, f25
 _sufd f16, f16, f34
 _ldfd f0, r1, #224
 _sufd f1, f0, f16
 _stfd f1, r1, #224

 _ldfd f1, r1, #16
 _ldfd f4, r1, #80
 _sufd f0, f1, f4
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd f0, f0,           ; mufd f0, f0, sqrt(2)
 _stfd f0, r1, #80

 _adfd f4, f1, f4
 _adfd f0, f4, f35
 _adfd f1, f0, f3
 _stfd f1, r1, #0
 _sufd f0, f0, f3
 _stfd f0, r1, #248

 _sufd f3, f35, f4
 _ldfd2 f2, r1, #224
 _sufd f0, f32, f2
 _adfd f1, f0, f3
 _stfd f1, r1, #232
 _sufd f0, f3, f0
 _stfd f0, r1, #16

 _ldfd f0, r1, #24
 _ldfd f1, r1, #88
 _sufd f3, f0, f1
 ldmia r10, {r3 - r5}    ; sqrt(2)
 _mufd   , f3,           ; mufd f3, f3, sqrt(2)
 _stfd   , r1, #88       ; stfd f3, [r1, #88]

 _adfd f3, f0, f1
 _sufd f4, f3, f4

 _ldfd2 f5, r1, #240    ; ldfd2 f5, [r1, #240]
 _adfd f0,   , f5       ; adfd f0, f4, f5
 _adfd   ,   , f6       ; adfd f1, f0, f6
 _stfd   , r1, #8       ; stfd f1, [r1, #8]
 _sufd   , f0, f6       ; sufd f0, f0, f6
 _stfd   , r1, #240     ; stfd f0, [r1, #240]
 _sufd f0, f5, f4       ; sufd f0, f5, f4
 _adfd   ,   , f2       ; adfd f1, f0, f2
 _stfd   , r1, #224     ; stfd f1, [r1, #224]
 _sufd   , f0, f2       ; sufd f0, f0, f2
 _stfd   , r1, #24      ; stfd f0, [r1, #24]

 _sufd f7, f10, f4

 _adfd f0,   , f8       ; adfd f0, f7, f8
 _adfd   ,   , f18      ; adfd f1, f0, f18
 _stfd   , r1, #128     ; stfd f1, [r1, #128]
 _sufd   , f0, f18      ; sufd f0, f0, f18
 _stfd   , r1, #120     ; stfd f0, [r1, #120]
 _sufd f0, f8, f7       ; sufd f0, f8, f7
 _adfd   ,   , f16      ; adfd f1, f0, f16
 _stfd   , r1, #104     ; stfd f1, [r1, #104]
 _sufd   , f0, f16      ; sufd f0, f0, f16
 _stfd   , r1, #144     ; stfd f0, [r1, #144]

 _sufd f2, f12, f3      ; sufd f2, f12, f3
 _sufd f4,   , f7       ; sufd f4, f2, f7

 _adfd f0,   , f33      ; adfd f0, f4, f33
 _adfd   ,   , f23      ; adfd f1, f0, f23
 _stfd   , r1, #136     ; stfd f1, [r1, #136]
 _sufd   , f0, f23      ; sufd f0, f0, f23
 _stfd   , r1, #112     ; stfd f0, [r1, #112]
 _sufd f0, f33, f4      ; sufd f0, f33, f4
 _adfd   ,   , f34      ; adfd f1, f0, f34
 _stfd   , r1, #96      ; stfd f1, [r1, #96]
 _sufd   , f0, f34      ; sufd f0, f0, f34
 _stfd   , r1, #152     ; stfd f0, [r1, #152]

 _ldfd f0, r1, #80
 _sufd f6, f0, f4

 _ldfd2 f4, r1, #184
 _adfd f0,   , f4       ; adfd f0, f6, f4
 _adfd   ,   , f13      ; adfd f1, f0, f13
 _stfd   , r1, #64      ; stfd f1, [r1, #64]
 _sufd   , f0, f13      ; sufd f0, f0, f13
 _stfd   , r1, #184     ; stfd f0, [r1, #184]
 _sufd f0, f4, f6       ; sufd f0, f4, f6
 _adfd   ,   , f25      ; adfd f1, f0, f25
 _stfd   , r1, #168     ; stfd f1, [r1, #168]
 _sufd   , f0, f25      ; sufd f0, f0, f25
 _stfd   , r1, #80      ; stfd f0, [r1, #80]

 _ldfd   , r1, #88      ; ldfd f0, r1, #88
 _sufd f5,   , f2       ; sufd f5, f0, f2
 _sufd f6,   , f6       ; sufd f6, f5, f6

 _adfd f0,   , f31      ; adfd f0, f6, f31
 _adfd   ,   , f30      ; adfd f1, f0, f30
 _stfd   , r1, #72      ; stfd f1, [r1, #72]
 _sufd   , f0, f30      ; sufd f0, f0, f30
 _stfd   , r1, #176     ; stfd f0, [r1, #176]
 _sufd f0, f31, f6      ; sufd f0, f31, f6
 _adfd   ,   , f17      ; adfd f1, f1, f17
 _stfd   , r1, #160     ; stfd f1, [r1, #160]
 _sufd   , f0, f17      ; sufd f0, f0, f17
 _stfd   , r1, #88      ; stfd f0, [r1, #88]

 _sufd f6, f11, f6      ; sufd f6, f11, f6

 _adfd f0,   , f29      ; adfd f0, f6, f29
 _adfd   ,   , f28      ; adfd f1, f0, f28
 _stfd   , r1, #192     ; stfd f1, [r1, #192]
 _sufd   , f0, f28      ; sufd f0, f0, f28
 _stfd   , r1, #56      ; stfd f0, [r1, #56]
 _sufd f0, f29, f6      ; sufd f0, f29, f6
 _adfd   ,   , f22      ; adfd f1, f0, f22
 _stfd   , r1, #40      ; stfd f1, [r1, #40]
 _sufd   , f0, f22      ; sufd f0, f0, f22
 _stfd   , r1, #208     ; stfd f0, [r1, #208]

 _sufd   , f14, f5      ; sufd f0, f14, f5
 _sufd f5,   , f6       ; sufd f5, f0, f6

 _adfd f0,   , f27      ; adfd f0, f5, f27
 _adfd   ,   , f26      ; adfd f1, f0, f26
 _stfd   , r1, #200     ; stfd f1, [r1, #200]
 _sufd   , f0, f26      ; sufd f0, f0, f26
 _stfd   , r1, #48      ; stfd f0, [r1, #48]
 _sufd f0, f27, f5      ; sufd f0, f27, f5
 _adfd   ,   , f21      ; adfd f1, f0, f21
 _stfd   , r1, #32      ; stfd f1, [r1, #32]
 _sufd   , f0, f21      ; sufd f0, f0, f21
 _stfd   , r1, #216     ; stfd f0, [r1, #216]
  ldmfd r13!, {r0 - r3, r10}
 ldmea r11, {r4 - r9, r11, r13, r15}

|L..12|
 dcd &3fff, &B504F333, &F9DE6484 ; long double  sqrt(2)


|mdct_short|
 ldr r12, |L..24|
 mov r2, #0
  stmfd r13!, {r4 - r10, r14}
  sub r13, r13, #7*12
  mov r9, r13
  adrl r10, |L..24|+4

|L..21|
  stmfd r13!, {r0 - r3}
 _ldfd f0, r0, #48      ; ldfd f0, [r0, #48]    ; inout[2*3]
 _ldfd2 f1, r12, #576   ; ldfd f1, [r12, #576]  ; win[SHORT_TYPE][0]
 _mufd f2,   ,          ; mufd f2, f0, f1
 _ldfd2 f3, r0, #120    ; ldfd f3, [r0, #120]   ; inout[5*3]
 _sufd f4,   ,          ; sufd f4, f2, f3       ; ts0 = inout[2*3] * win[SHORT_TYPE][0] - inout[5*3]
 _mufd   , f3, f1       ; mufd f2, f3, f1
 _adfd f5,   , f0       ; adfd f5, f2, f0       ; ts0a = inout[5*3] * win[SHORT_TYPE][0] + inout[2*3]
 _ldfd f0, r0, #0       ; ldfd f0, [r0]         ; inout[0*3]
 _ldfd2 f1, r12, #592   ; ldfd f1, [r12, #592]  ; win[SHORT_TYPE][2]
 _mufd f2,   ,          ; mufd f2, f0, f1
 _ldfd2 f3, r0, #72     ; ldfd f3, [r0, #72]    ; inout[3*3]
 _sufd f7,   ,          ; sufd f7, f2, f3       ; tc0 = inout[0*3] * win[SHORT_TYPE][2] - inout[3*3]
 _mufd   , f3, f1       ; mufd f2, f3, f1
 _adfd f6,   , f0       ; adfd f6, f2, f0       ; tc0a = inout[3*3] * win[SHORT_TYPE][2] + inout[0*3]
 _sufd f3,   , f5       ; sufd f3, f6, f5       ; ts2 = tc0a - ts0a
 _adfd f5, f5, f6       ; adfd f5, f5, f6       ; ts1 = ts0a + tc0a
 _adfd f6, f4, f7       ; adfd f6, f4, f7       ; tc1 = ts0 + tc0
 _sufd f4, f4, f7       ; sufd f4, f4, f7       ; tc2 = ts0 - tc0
 _ldfd f2, r0, #24      ; ldfd f2, [r0, #24]
 _ldfd2 f0, r12, #584   ; ldfd f0, [r12, #584]  ; win[SHORT_TYPE][1]
 _mufd f7,   ,          ; mufd f7, f2, f0
 _ldfd2 f1, r0, #96     ; ldfd f1, [r0, #96]
 _sufd f7,   ,          ; sufd f7, f7, f1
 _mufd   , f1, f0       ; mufd f1, f1, f0
 _adfd f2,   , f2       ; adfd f2, f1, f2
 add r7, r10, #24
 ldmia r7, {r3 - r5}
 _mufd f0, f6,          ; mufd f0, f6, [r10, #24]
 ldmia r10, {r3 - r5}
 _mufd f7, f7,          ; mufd f7, f7, [r10, #0]
 _adfd   ,   , f0       ; adfd f0, f7, f0
 _stfd   , r0, #0       ; stfd f0, [r0]
 add r7, r10, #24
 ldmia r7, {r3 - r5}
 _mufd f1, f5,          ; mufd f1, f5, [r10, #24]
 ldmia r10, {r3 - r5}
 _mufd f2, f2,          ; mufd f2, f2, [r10]
 _sufd   ,   , f1       ; sufd f1, f2, f1
 _stfd   , r0, #120     ; stfd f1, [r0, #120]
 add r7, r10, #36
 ldmia r7, {r3 - r5}
 _mufd   , f5,          ; mufd f5, f5, [r10, #36]
 _adfd f5,   , f2       ; adfd f5, f5, f2
 add r7, r10, #12
 ldmia r7, {r3 - r5}
 _mufd f4, f4,          ; mufd f4, f4, [r10, #12] ; tc2 = tc2 * 0.86602540378443870761 * 1.907525191737281e-11
 _sufd   ,   , f5       ; sufd f2, f4, f5
 _stfd   , r0, #24      ; stfd f2, [r0, #24]
 _adfd   , f4, f5       ; adfd f2, f4, f5
 _stfd   , r0, #48      ; stfd f2, [r0, #48]
 add r7, r10, #36
 ldmia r7, {r3 - r5}
 _mufd   , f6,          ; mufd f6, f6, [r10, #36]
 _sufd f6,   , f7       ; sufd f6, f6, f7
 add r7, r10, #12
 ldmia r7, {r3 - r5}
 _mufd f0, f3,          ; mufd f0, f3, [r10, #12]
 _adfd   ,   , f6       ; adfd f1, f0, f6
 _stfd   , r0, #72      ; stfd f1, [r0, #72]
 _sufd   , f6, f0       ; sufd f1, f6, f0
 _stfd   , r0, #96      ; stfd f1, [r0, #96]
  ldmfd r13!, {r0 - r3}
 add r0, r0, #8
 add r2, r2, #1
 cmp r2, #2
  ble |L..21|

  add r13, r13, #7*12
 ldmfd r13!, {r4 - r10, r15}

|L..24|
 DCD |win|
 dcd &3FDB, &B613C365, &8CE27800 ; long double 2.06997811195308909253e-11
 dcd &3FDB, &914EF372, &D8861000 ; long double 1.65196527440326735879e-11
 dcd &3FDB, &A7C9A612, &172B8000 ; long double 1.90752519173727988323e-11
 dcd &3FDA, &A7C9A612, &172B9800 ; long double 9.53762595868640426293e-12


|mdct_long|
 KEEP |mdct_long|
 ; frame = 176
 adrl r12, |L..28|
 ldr r12, [r12]
  stmfd r13!, {r9, r14}
  sub r13, r13, #12*15
  mov r9, r13
  sub r13, r13, #104
  stmfd r13!, {r0 - r13}
 _ldfd   , r1, #8       ; ldfd f7, [r1, #8]
 _ldfd2  , r1, #56      ; ldfd f1, [r1, #56]
 _adfd f8,   ,          ; adfd f8, f7, f1
 _ldfd2 f3, r1, #32     ; ldfd f3, [r1, #32]
 _sufd f2,   ,          ; sufd f2, f8, f3
 _ldfd   , r1, #0       ; ldfd f7, [r1]
 _ldfd2  , r1, #64      ; ldfd f1, [r1, #64]
 _adfd f9,   ,          ; adfd f9, f7, f1
 _ldfd   , r1, #16      ; ldfd f7, [r1, #16]
 _ldfd2  , r1, #48      ; ldfd f1, [r1, #48]
 _adfd f10,  ,          ; adfd f10, f7, f1
 _adfd f0,   , f9       ; adfd f0, f10, f9
 _ldfd   , r1, #24      ; ldfd f7, [r1, #24]
 _ldfd2  , r1, #40      ; ldfd f1, [r1, #40]
 _adfd f11,  ,          ; adfd f11, f7, f1
 _rsfd f0,   , f0       ; rsfd f0, f11, f0
 _sufd   ,   , f2       ; sufd f1, f0, f2
 _stfd   , r0, #136     ; stfd f1, [r0, #136]
 _ldfd   , r12, #0      ; ldfd f1, [r12, #0]
 _mufd   ,   , f0       ; mufd f1, f1, f0
 _adfd f5,   , f2       ; adfd f5, f1, f2
 _ldfd   , r1, #120     ; ldfd f0, [r1, #120]
 _ldfd2  , r1, #88      ; ldfd f1, [r1, #88]
 _sufd f12,   ,         ; sufd f12, f0, f1

 _ldfd   , r1, #112     ; ldfd f0, [r1, #112]
 _ldfd2  , r1, #96      ; ldfd f1, [r1, #96]
 _sufd f0,   ,          ; sufd f0, f0, f1
 _stfd f0, r13, #24

 _ldfd f6, r1, #136
 _ldfd f1, r1, #72
 _sufd f4, f6, f1
 _sufd f1, f4, f12
 _sufd f0, f1, f0
 _ldfd f2, r12, #-8
 _mufd f1, f0, f2
 _adfd f0, f1, f5
 _stfd f0, r0, #40
 _sufd f0, f1, f5
 _stfd f0, r0, #48

 _ldfd f5, r1, #128
 _ldfd f2, r1, #80
 _adfd f0, f5, f2
 _stfd f0, r13, #96

 _ldfd f0, r12, #0
 _mufd f1, f8, f0
 _adfd f8, f1, f3

 _sufd f5, f5, f2
 _ldfd f0, r12, #-8
 _mufd f5, f5, f0
 _ldfd f2, r12, #-56
 _mufd f1, f4, f2
 _adfd f1, f1, f5
 _ldfd f3, r12, #-48
 _mufd f2, f12, f3
 _adfd f1, f1, f2
 _ldfd f2, r13, #24
 _ldfd f3, r12, #-40
 _mufd f0, f2, f3
 _adfd f7, f0, f1
 _ldfd f1, r12, #-24
 _mufd f2, f9, f1
 _sufd f2, f8, f2
 _ldfd f0, r12, #-16
 _mufd f1, f10, f0
 _sufd f2, f2, f1
 _ldfd f0, r12, #-32
 _mufd f0, f11, f0
 _adfd f2, f0, f2
 _adfd f1, f2, f7
 _stfd f1, r0, #8
 _sufd f1, f7, f2
 _stfd f1, r0, #16

 _ldfd f2, r12, #-48
 _mufd f0, f4, f2
 _sufd f0, f0, f5
 _ldfd f2, r12, #-40
 _mufd f1, f12, f2
 _sufd f0, f0, f1
 _ldfd f7, r13, #24
 _ldfd f1, r12, #-56
 _mufd f2, f7, f1
 _adfd f7, f0, f2
 _ldfd f2, r12, #-16
 _mufd f3, f9, f2
 _sufd f3, f8, f3
 _ldfd f2, r12, #-32
 _mufd f0, f10, f2
 _sufd f3, f3, f0
 _ldfd f0, r12, #-24
 _mufd f1, f11, f0
 _adfd f3, f3, f1
 _adfd f0, f7, f3
 _stfd f0, r0, #72
 _sufd f1, f7, f3
 _stfd f1, r0, #80

 _ldfd f2, r12, #-40
 _mufd f4, f4, f2
 _sufd f4, f4, f5
 _ldfd f7, r12, #-56
 _mufd f2, f12, f7
 _adfd f4, f4, f2
 _ldfd f2, r13, #24
 _ldfd f3, r12, #-48
 _mufd f0, f2, f3
 _sufd f4, f4, f0
 _ldfd f1, r12, #-32
 _mufd f7, f9, f1
 _sufd f7, f7, f8
 _ldfd f1, r12, #-24
 _mufd f0, f10, f1
 _adfd f7, f7, f0
 _ldfd f3, r12, #-16
 _mufd f0, f11, f3
 _sufd f7, f7, f0
 _adfd f0, f4, f7
 _stfd f0, r0, #104
 _sufd f1, f4, f7
 _stfd f1, r0, #112

 _ldfd f0, r1, #64
 _ldfd f1, r1, #0
 _sufd f3, f0, f1
 _stfd f3, r13, #0

 _ldfd f0, r1, #48
 _ldfd f1, r1, #16
 _sufd f14, f0, f1
 _ldfd f0, r1, #40
 _ldfd f1, r1, #24
 _sufd f13, f0, f1
 _sufd f0, f3, f14
 _adfd f0, f0, f13
 _ldfd f7, r12, #-8
 _mufd f12, f0, f7

 _ldfd f0, r1, #72
 _adfd f6, f6, f0
 _ldfd f1, r1, #120
 _ldfd f4, r1, #88
 _adfd f4, f1, f4
 _ldfd f5, r1, #112
 _ldfd f0, r1, #96
 _adfd f5, f5, f0
 _adfd f0, f6, f4
 _adfd f0, f0, f5
 _ldfd f1, r13, #96
 _ldfd f3, r1, #104
 _adfd f2, f1, f3
 _ldfd f7, r12, #0
 _mufd f1, f1, f7
 _sufd f1, f3, f1
 _stfd f1, r13, #96
 _mufd f1, f0, f7
 _sufd f1, f1, f2
 _adfd f0, f0, f2
 _stfd f0, r0, #0

 _adfd f0, f1, f12
 _stfd f0, r0, #88
 _sufd f0, f1, f12
 _stfd f0, r0, #96

 _ldfd f7, r12, #-32
 _mufd f0, f6, f7
 _ldfd f1, r13, #96
 _sufd f0, f0, f1
 _ldfd f2, r12, #-24
 _mufd f1, f4, f2
 _adfd f0, f1, f0
 _ldfd f7, r12, #-16
 _mufd f2, f5, f7
 _adfd f3, f0, f2
 _ldfd f1, r1, #56
 _ldfd f2, r1, #8
 _sufd f0, f1, f2
 _ldfd f1, r12, #-8
 _mufd f7, f0, f1
 _ldfd f1, r13, #0
 _ldfd f2, r12, #-40
 _mufd f0, f1, f2
 _adfd f0, f0, f7
 _ldfd f2, r12, #-56
 _mufd f1, f14, f2
 _adfd f0, f1, f0
 _ldfd f1, r12, #-48
 _mufd f2, f1, f13
 _adfd f0, f2, f0
 _adfd f1, f0, f3
 _stfd f1, r0, #24
 _sufd f0, f3, f0
 _stfd f0, r0, #32

 _ldfd f1, r12, #-16
 _mufd f0, f6, f1
 _ldfd f2, r13, #96
 _sufd f0, f2, f0
 _ldfd f2, r12, #-32
 _mufd f1, f4, f2
 _sufd f0, f0, f1
 _ldfd f1, r12, #-24
 _mufd f2, f5, f1
 _sufd f3, f0, f2
 _ldfd f2, r13, #0
 _ldfd f0, r12, #-48
 _mufd f0, f2, f0
 _adfd f0, f0, f7
 _ldfd f1, r12, #-40
 _mufd f1, f14, f1
 _sufd f0, f0, f1
 _ldfd f2, r12, #-56
 _mufd f2, f13, f2
 _sufd f0, f0, f2
 _adfd f1, f3, f0
 _stfd f1, r0, #56
 _sufd f0, f3, f0
 _stfd f0, r0, #64

 _ldfd f3, r12, #-24
 _mufd f6, f6, f3
 _ldfd f1, r13, #96
 _sufd f6, f1, f6
 _ldfd f2, r12, #-16
 _mufd f1, f4, f2
 _sufd f6, f6, f1
 _ldfd f3, r12, #-32
 _mufd f1, f5, f3
 _sufd f6, f6, f1
 _ldfd f1, r13, #0
 _ldfd2  , r12, #-56    ; ldfd f3, [r12, #-56]
 _mufd   , f1,          ; mufd f0, f1, f3
 _sufd f7,   , f7       ; sufd f7, f0, f7
 _ldfd2  , r12, #-40    ; ldfd f3, [r12, #-40]
 _mufd f0, f13,         ; mufd f0, f13, f3
 _ldfd2  , r12, #-48    ; ldfd f1, [r12, #-48]
 _mufd   , f14,         ; mufd f1, f14, f1
 _adfd   ,   , f7       ; adfd f1, f1, f7
 _sufd f1,   , f0       ; sufd f1, f1, f0
 _adfd   ,   , f6       ; adfd f0, f1, f6
 _stfd   , r0, #120     ; stfd f0, [r0, #120]
 _sufd   , f6, f1       ; sufd f0, f6, f1
 _stfd   , r0, #128     ; stfd f0, [r0, #128]
  ldmfd r13!, {r0 - r13}
  add r13, r13, #104
  add r13, r13, #12*15
 ldmfd r13!, {r9, r15}

|L..28|
 DCD |win|+728


 EXPORT |mdct_sub48|
|mdct_sub48|
 ; frame = 220, frame_needed = 1
 mov r12, r13
 stmfd r13!, {r4 - r9, r11, r12, r14, r15}
 sub r11, r12, #4
 cmp r13, r10
 bllt |__rt_stkovf_split_small|
 sub r13, r13, #220
 add r1, r1, #1136
 add r1, r1, #8
 str r1, [r13, #160]
 mov r9, r0
 ldr r12, [r0, #44]
 mov r0, #0
 str r0, [r13, #156]
 str r2, [r13, #144]
 str r3, [r13, #148]
 cmp r0, r12
 bge |L..32|

|L..34|
 ldr r12, [r9, #36]
 mov r1, #0
 str r1, [r13, #152]
 ldr r2, [r13, #156]
 cmp r1, r12
 add r2, r2, #1
 str r2, [r13, #200]
 bge |L..36|
 ldr r3, [r13, #156]
 mov r2, r3, lsl #3
 sub r12, r2, r3
 mov r12, r12, lsl #4
 str r12, [r13, #176]
 add r2, r2, r3
 str r2, [r13, #168]

|L..38|
 ldr r12, [r13, #152]
 mov r3, r12, lsl #3
 ldr r14, [r13, #148]
 add r2, r3, r12
 ldr r0, [r13, #168]
 add r2, r14, r2, lsl #10
 ldr r1, [r13, #176]
 add r2, r2, r0, lsl #9
 sub r12, r3, r12
 mov r12, r12, lsl #5
 add r12, r12, #32000
 add r12, r12, #136
 add r12, r9, r12
 str r2, [r13, #164]
 add r12, r12, r1
 str r12, [r13, #172]
 str r3, [r13, #212]
 ldr r3, [r13, #152]
 mov r6, #0
 ldr r12, |L..101|
 rsb r2, r3, #1
 add r14, r3, #1
 add r12, r12, r0, lsl #10
 add r12, r9, r12
 str r2, [r13, #204]
 add r2, r2, r2, lsl #3
 add r5, r12, r2, lsl #9
 str r14, [r13, #196]

|L..42|
 ldr r0, [r13, #160]
 mov r1, r5
 bl |window_subband|
 ldr r1, [r13, #160]
 add r0, r1, #128
 add r1, r5, #256
 bl |window_subband|
 add r5, r5, #512
 mov r8, #1
 ldr r2, [r13, #160]
 add r6, r6, #1
 add r2, r2, #256
 str r2, [r13, #160]

|L..46|
 add r12, r5, r8, lsl #3
 sub r12, r12, #256
  ldr r1, [r12]         ; ldfd f0, [r12, #0]
 add r8, r8, #2
  eor r1, r1, #1<<31    ; mnfdz f0, f0
  str r1, [r12]         ; stfd f0, [r12, #0]
 cmp r8, #31
 ble |L..46|

 cmp r6, #8
 ble |L..42|

 ldr r12, |L..101|+4
 ldr r2, [r9, r12]
 cmp r2, #0
 bne |L..49|
 ldr r2, |L..101|+8
 sub r12, r12, #8
 ldr r8, [r9, r12]
 ldr r12, [r9, r2]
 cmp r8, r12
 bgt |L..51|
 ldr r3, [r13, #204]
 ldr r5, |L..101|+12
 add r12, r3, r3, lsl #3
 mov r0, r12, lsl #9
 ldr r12, [r13, #168]
 mov r4, r2
 mov r1, r12, lsl #10

|L..53|
 ldr r6, |L..101|+16
 add r12, r9, r8, lsl #3
 ldr r2, [r5, r8, lsl #2]
 add r3, r6, r12
 mov r6, #0
 mov r2, r2, lsl #3

|L..57|
 add r12, r2, r6, lsl #8
 add r12, r12, r0
 add r12, r12, r1
 add r12, r9, r12
 add r12, r12, #35840
 add r12, r12, #4
  stmfd r13!, {r0 - r8}
 _ldfd2  , , r3         ; ldfd f1, [r3]
 _ldfd   , r12, #0      ; ldfd f0, [r12]
 _mufd   ,   ,          ; mufd f0, f0, f1
 _stfd   , r12, #0      ; stfd f0, [r12]
  ldmfd r13!, {r0 - r8}
 add r6, r6, #1
 cmp r6, #17
 ble |L..57|

 ldr r12, [r9, r4]
 add r8, r8, #1
 cmp r8, r12
 ble |L..53|

|L..51|
 ldr r12, |L..101|+20
 ldr r2, |L..101|+24
 ldr r8, [r9, r12]
 ldr r12, [r9, r2]
 cmp r8, r12
 bgt |L..49|
 ldr r14, [r13, #204]
 ldr r3, [r13, #168]
 mov r4, r2
 ldr r5, |L..101|+12
 add r12, r14, r14, lsl #3
 mov r0, r12, lsl #9
 mov r1, r3, lsl #10

|L..63|
 ldr r6, |L..101|+28
 add r12, r9, r8, lsl #3
 ldr r2, [r5, r8, lsl #2]
 add r3, r6, r12
 add r12, r0, r2, lsl #3
 add r12, r12, r1
 add r12, r9, r12
 add r12, r12, #35840
 add r12, r12, #4
 mov r6, #0

|L..67|
  stmfd r13!, {r0 - r8}
 _ldfd2   , , r3        ; ldfd f1, [r3]
 _ldfd   , r12, #0      ; ldfd f0, [r12]
 _mufd   ,   ,          ; mufd f0, f0, f1
 _stfd   , r12, #0      ; stfd f0, [r12]
  ldmfd r13!, {r0 - r8}
 add r12, r12, #1<<8
 add r6, r6, #1
 cmp r6, #17
 ble |L..67|

 ldr r12, [r9, r4]
 add r8, r8, #1
 cmp r8, r12
 ble |L..63|

|L..49|
 mov r8, #0

|L..73|
 ldr r14, [r13, #172]
 ldr r2, |L..101|+32
 ldr r12, [r14, #24]
 str r12, [r13, #180]
 ldr r1, [r9, r2]
 mov r0, r12
 ldr r2, |L..101|
 ldr r3, [r14, #28]
 cmp r8, #1
 movgt r12, #0
 movle r12, #1
 ldr r14, [r13, #152]
 cmp r3, #0
 moveq r12, #0
 cmp r12, #0
 movne r0, #0
 str r0, [r13, #180]
 cmp r8, r1
 ldr r1, [r13, #168]
 ldr r12, [r13, #212]
 ldr r0, |L..101|+12
 add r2, r2, r1, lsl #10
 add r2, r9, r2
 add r3, r12, r14
 ldr r1, [r0, r8, lsl #2]
 add r3, r2, r3, lsl #9
 mov r1, r1, lsl #3
 add r3, r3, r1
 str r3, [r13, #184]
 ldr r3, [r13, #204]
 add r12, r3, r3, lsl #3
 add r2, r2, r12, lsl #9
 add r2, r2, r1
 str r2, [r13, #188]
 bge |L..76|
 ldr r12, |L..101|+36
 ldr r2, [r9, r12]
 cmp r8, r2
 bgt |L..75|

|L..76|
 mov r1, #0
 ldr r0, [r13, #164]
 mov r2, #144
 bl |memset|
 ldr r14, [r13, #164]
 add r12, r8, #1
 str r12, [r13, #208]
 add r14, r14, #144
 str r14, [r13, #192]
 b |L..77|

|L..75|
 ldr r0, [r13, #180]
 cmp r0, #2
 bne |L..78|
 add r1, r8, #1
 str r1, [r13, #208]
 mvn r6, #2
 ldr r2, [r13, #164]
 mov r5, #2304
 ldr r7, |L..101|+40
 add r2, r2, #144
 str r2, [r13, #192]

|L..82|
 add r12, r6, #3
 add r12, r7, r12, lsl #3
 add r14, r6, r6, lsl #1
 ldr r3, [r13, #164]
 add r14, r3, r14, lsl #3
 ldr r4, [r13, #184]
 rsb r0, r6, #8
 add r3, r4, r6, lsl #8
 add r4, r4, r0, lsl #8
 ldr r2, [r13, #188]
 rsb r5, r6, #2
 add r5, r2, r5, lsl #8
 add r1, r2, r6, lsl #8
 add r1, r1, #768
 add r2, r3, #2304
 add r3, r3, #3840
  sub r13, r13, #4*12
  stmfd r13!, {r0 - r10}
  add r9, r13, #4*11
  mov r10, r14
 _ldfd   , , r2         ; ldfd f0, [r2, #0]
 _ldfd2 f2, r12, #0     ; ldfd f2, [r12, #0]
 _mufd   ,   ,          ; mufd f0, f0, f2
 _ldfd2   , r4, #0      ; ldfd f1, [r4, #0]
 _sufd   ,   ,          ; sufd f0, f0, f1
 _stfd   , r10, #72     ; stfd f0, [r10, #72]
 _ldfd f3, r4, #1536    ; ldfd f3, [r4, #1536]
 _mufd   ,   , f2       ; mufd f1, f3, f2
 _ldfd2 f0, r3, #0      ; ldfd f0, [r3, #0]
 _adfd   ,   ,          ; adfd f1, f1, f0
 _stfd   , r10, #144    ; stfd f1, [r10, #144]
 _mufd   , f0, f2       ; mufd f0, f0, f2
 _sufd   ,   , f3       ; sufd f0, f0, f3
 _stfd   , r10, #80     ; stfd f0, [r10, #80]
 _ldfd f3, r5, #0       ; ldfd f3, [r5, #0]
 _mufd   ,   , f2       ; mufd f1, f3, f2
 _ldfd2 f0, r1, #0      ; ldfd f0, [r1, #0]
 _adfd   ,   ,          ; adfd f1, f1, f0
 _stfd   , r10, #152    ; stfd f1, [r10, #152]
 _mufd   , f0, f2       ; mufd f0, f0, f2
 _sufd   ,   , f3       ; sufd f0, f0, f3
 _stfd   , r10, #88     ; stfd f0, [r10, #88]
 _ldfd   , r5, #1536    ; ldfd f0, [r5, #1536]
 _mufd   ,   , f2       ; mufd f0, f0, f2
 _ldfd2  , r1, #1536    ; ldfd f1, [r1, #1536]
 _adfd   ,   ,          ; adfd f0, f0, f1
 _stfd   , r10, #160    ; stfd f0, [r10, #160]
  ldmfd r13!, {r0 - r10}
  add r13, r13, #4*12
 adds r6, r6, #1
 bmi |L..82|

 ldr r0, [r13, #164]
 bl |mdct_short|
 b |L..77|

|L..101|
 DCD 35844
 DCD 32040
 DCD 32036
 DCD |order|
 DCD 54532
 DCD 32024
 DCD 32028
 DCD 54276
 DCD 32016
 DCD 32020
 DCD |win|+576

|L..78|
 add r12, r8, #1
 str r12, [r13, #208]
 ldr r14, [r13, #164]
 mvn r6, #8
 ldr r0, [r13, #180]
 add r14, r14, #144
 add r12, r0, r0, lsl #3
 mov r7, r12, lsl #5
 str r14, [r13, #192]

|L..88|
 ldr r1, |L..104|+4
 add r2, r6, #9
 add r2, r7, r2, lsl #3
 add r2, r2, r1
 add r12, r2, #72
 ldr r14, [r13, #188]
 add r3, r14, r6, lsl #8
 rsb r0, r6, #8
 add r14, r14, r0, lsl #8
 add r3, r3, #2304
 ldr r1, |L..104|
 add r5, r1, r6, lsl #3
 add r1, r6, #9
 add r4, r13, r1, lsl #3
 ldr r1, [r13, #184]
 rsb r0, r6, #8
 add r0, r1, r0, lsl #8
 add r1, r1, r6, lsl #8
 add r1, r1, #2304
  sub r13, r13, #5*12
  stmfd r13!, {r0 - r10}
  mov r10, r14
  add r9, r13, #11*4
 _ldfd2  , , r0         ; ldfd f1, [r0]
 _ldfd   , r12, #0      ; ldfd f0, [r12]
 _mufd f0,   ,          ; mufd f0, f0, f1
 _ldfd   , r2, #0       ; ldfd f2, [r2]
 _ldfd2  , r1, #0       ; ldfd f4, [r1]
 _mufd   ,   ,          ; mufd f2, f2, f4
 _sufd f2,   , f0       ; sufd f2, f2, f0
 _ldfd2 f1, r5, #0      ; ldfd f1, [r5]
 _mufd f0,   ,          ; mufd f0, f2, f1
 _ldfd   , r2, #216     ; ldfd f4, [r2, #216]
 _ldfd2  , r10, #0      ; ldfd f1, [r10]
 _mufd f4,   ,          ; mufd f4, f4, f1
 _ldfd   , r2, #144     ; ldfd f3, [r2, #144]
 _ldfd2  , r3, #0       ; ldfd f2, [r3]
 _mufd   ,   ,          ; mufd f3, f3, f2
 _adfd f3,   , f4       ; adfd f3, f3, f4
 _sufd   ,   , f0       ; sufd f0, f3, f0
 _stfd   , r4, #0       ; stfd f0, [r4]
 _mufd   , f3, f1       ; mufd f3, f3, f1
 _adfd   ,   , f2       ; adfd f3, f3, f2
 _stfd   , r4, #72      ; stfd f3, [r4, #72]
  ldmfd r13!, {r0 - r10}
  add r13, r13, #5*12

 adds r6, r6, #1
 bmi |L..88|

 ldr r0, [r13, #164]
 mov r1, r13
 bl |mdct_long|
|L..77|
 ldr r2, [r13, #180]
 cmp r8, #0
 cmpne r2, #2
 beq |L..72|
  ldr r0, [r13, #164]
 ldr r12, |L..104|+8
 add r1, r0, #56
 add r12, r12, #56
 sub r0, r0, #64
 stmfd r13!, {r4 - r7, r9, r10}
 mov r10, #7
 sub r13, r13, #5*12
 mov r9, r13

|L..95|
  stmfd r13!, {r0, r1}
 _ldfd f0, , r1         ; ldfd f0, [r1]
 _ldfd2 f2, r12, #0     ; ldfd f2, [r12]
 _mufd f1,   ,          ; mufd f1, f0, f2
 _ldfd2 f4, r12, #64    ; ldfd f4, [r12, #64]
 _mufd f0, f0,          ; mufd f0, f0, f4
 _ldfd f3, r0, #0       ; ldfd f3, [r0]
 _mufd   ,   , f4       ; mufd f4, f3, f4
 _adfd   ,   , f1       ; adfd f4, f4, f1
 _stfd   , r0, #0       ; stfd f4, [r0]
 _mufd   , f3, f2       ; mufd f4, f3, f2
 _rsfd   ,   , f0       ; sufd f4, f4, f0
 _stfd   , r1, #0       ; stfd f4, [r1]
  ldmfd r13!, {r0, r1}
 sub r12, r12, #8
 add r0, r0, #8
 sub r1, r1, #8
 subs r10, r10, #1
 bpl |L..95|

  add r13, r13, #5*12
  ldmfd r13!, {r4 - r7, r9, r10}

|L..72|
 ldr r8, [r13, #208]
 ldr r14, [r13, #192]
 cmp r8, #31
 str r14, [r13, #164]
 ble |L..73|

 ldr r0, [r13, #196]
 ldr r12, [r9, #36]
 str r0, [r13, #152]
 cmp r0, r12
 blt |L..38|

|L..36|
 ldr r1, [r13, #144]
 cmp r12, #1
 add r1, r1, #1136
 str r1, [r13, #160]
 add r1, r1, #8
 str r1, [r13, #160]
 bne |L..33|
 ldr r2, [r13, #156]
 add r1, r2, r2, lsl #3
 add r1, r9, r1, lsl #10
 add r0, r1, #35840
 add r0, r0, #4
 add r1, r1, #40448
 add r1, r1, #4
 mov r2, #4608
 bl |memcpy|
|L..33|
 ldr r3, [r13, #200]
 ldr r12, [r9, #44]
 str r3, [r13, #156]
 cmp r3, r12
 blt |L..34|

|L..32|
 ldmea r11, {r4 - r9, r11, r13, r15}

|L..104|
 DCD |win|+672
 DCD |win|
 DCD |win|+736

|enwindow|
 KEEP |enwindow|
 DCD &bfc2f9ef, &256c9456 ; double -1.48252385400300112916e-1
 DCD &40402771, &321b94fd ; double 3.23081419596364654012e1
 DCD &40728674, &876ccba8 ; double 2.96403449463827655563e2
 DCD &408b9913, &6dec0555 ; double 8.83134487003243179970e2
 DCD &40c5b4f9, &439fd62b ; double 1.11139473762317411456e4
 DCD &40908515, &e0f374a7 ; double 1.05727136593245973017e3
 DCD &40731bd8, &7b5b188  ; double 3.05740241727581178566e2
 DCD &403ed370, &13ad96b3 ; double 3.08259289072800122256e1
 DCD &400ed398, &d073674e ; double 3.85331881382163654592
 DCD &404db6e9, &9e109676 ; double 5.94290044384951414713e1
 DCD &40862cb8, &4fd44dfa ; double 7.09589996012334495390e2
 DCD &40b4a1e9, &3f59ddd0 ; double 5.28191112291016906966e3
 DCD &c0b6c5aa, &32bde6c4 ; double -5.82966483675846029655e3
 DCD &c0898d08, &d3e0b881 ; double -8.17629310374861347555e2
 DCD &c0533aa9, &14b9c7e5 ; double -7.69165698827997204035e1
 DCD &c0126088, &4c87099d ; double -4.59426993917659576283
 DCD &3fed00cb, &c7384d2e ; double 9.06347169019147136382e-1
 DCD &3fc917a6, &bc29b42f ; double 1.96034280659121290524e-1
 DCD &bfc3cc20, &55b3abf5 ; double -1.54666940542795977587e-1
 DCD &40412985, &8a4b574a ; double 3.43243878238559574356e1
 DCD &4072dce8, &79a81b96 ; double 3.01806756645842483522e2
 DCD &40898ccb, &fc9aca62 ; double 8.17599602898884995739e2
 DCD &40c69ae5, &e01b32f8 ; double 1.15737959016798849916e4
 DCD &40927502, &1be6548f ; double 1.18125205955401520441e3
 DCD &4074198e, &9b02dd98 ; double 3.21597315798944237031e2
 DCD &403f3b65, &c733afb0 ; double 3.12320217610537724795e1
 DCD &400daf88, &8082023e ; double 3.71070957562213177283
 DCD &404ad352, &34204c5c ; double 5.36509461553293647285e1
 DCD &40856156, &e48dd1cc ; double 6.84167428119626038097e2
 DCD &40b46890, &f558e47f ; double 5.22456624370172994531e3
 DCD &c0b8de64, &5067ccc9 ; double -6.36639185189008367161e3
 DCD &c08c67d0, &26f75309 ; double -9.08976636821958095425e2
 DCD &c056752a, &137d9dc  ; double -8.98306887669963884946e1
 DCD &c015a545, &5db3e44e ; double -5.41139742289040093226
 DCD &3fea4300, &2ae4284f ; double 8.20678790828660242873e-1
 DCD &3fd8f8b8, &3c69a60e ; double 3.90180644032256718212e-1
 DCD &bfc4921b, &e03e2df9 ; double -1.60708889478300226417e-1
 DCD &404212d2, &4a28161  ; double 3.61470342439158756065e1
 DCD &407301e3, &f94f370a ; double 3.04118157681878642506e2
 DCD &4086e5f1, &7e25cb23 ; double 7.32742916388761273083e2
 DCD &40c76ace, &10a2e767 ; double 1.19896098827009100205e4
 DCD &4094500c, &92bb5fd9 ; double 1.30001227848789699237e3
 DCD &4074f48e, &f44777c1 ; double 3.35284900931521463008e2
 DCD &403f7cf8, &1f050430 ; double 3.14881610285994497644e1
 DCD &400afdb2, &aa0df6ad ; double 3.37387593131173568750
 DCD &40479dba, &1743c324 ; double 4.72322415428991746467e1
 DCD &408465e5, &be6d5e45 ; double 6.52737179617347123894e2
 DCD &40b40c6a, &ca798a4  ; double 5.13241425559498384246e3
 DCD &c0bafd16, &4acb8082 ; double -6.90908707878005407110e3
 DCD &c08f4ffe, &72b3090  ; double -1.00199903711072875012e3
 DCD &c059e7cc, &839457ba ; double -1.03621857542863750723e2
 DCD &c0186b6f, &2e0630ef ; double -6.10491630471027146854
 DCD &3fe7bb99, &ed2990ce ; double 7.41650546272035304796e-1
 DCD &3fe29406, &2ed59f07 ; double 5.80569354508924884151e-1
 DCD &bfc54b67, &ab2b10d2 ; double -1.66363676622614919953e-1
 DCD &4042e036, &11d18634 ; double 3.77516500733439954729e1
 DCD &4072f02d, &31db72e7 ; double 3.03011033875677128435e2
 DCD &40839fcc, &4923d863 ; double 6.27974748878518198580e2
 DCD &40c82361, &b7eb6553 ; double 1.23587634252781626856e4
 DCD &4096111c, &a9e523ba ; double 1.41227799184828336365e3
 DCD &4075abfe, &b4512fde ; double 3.46749683682572026555e2
 DCD &403f9929, &5093f32d ; double 3.15982866631704162330e1
 DCD &40094766, &8995bd6d ; double 3.15986354339809460967
 DCD &40444a15, &ab148be9 ; double 4.05787862634968590214e1
 DCD &40834156, &3f62fee4 ; double 6.16167113088039059221e2
 DCD &40b38fd5, &3ff552ea ; double 5.00783300717615384201e3
 DCD &c0bd1e0a, &6976d69d ; double -7.45404067175616819441e3
 DCD &c0911f2f, &2395f9b2 ; double -1.09579603418671149484e3
 DCD &c05d8f9f, &9b80c747 ; double -1.18244116664657767046e2
 DCD &c01b461c, &d404e094 ; double -6.81846934585350439306
 DCD &3fe561b8, &2ab7f990 ; double 6.68178637919298878955e-1
 DCD &3fe87de2, &a6aea964 ; double 7.65366864730179674581e-1
 DCD &bfc5f791, &6f923494 ; double -1.71617679098208797406e-1
 DCD &40438ec9, &51b04290 ; double 3.91155187712330416616e1
 DCD &4072a576, &10d82fc0 ; double 2.98341324657896620920e2
 DCD &407f786a, &2153862a ; double 5.03525910688653880243e2
 DCD &40c8c3cb, &71bc1844 ; double 1.26795894084089741227e4
 DCD &4097b254, &2a2be68a ; double 1.51658219212145422716e3
 DCD &40763fc2, &dfb725e8 ; double 3.55985076632902291749e2
 DCD &403f652e, &8f8b88e7 ; double 3.13952417102490493050e1
 DCD &400754d4, &a1c55940 ; double 2.91642118819723350498
 DCD &4040e609, &a7acd8b8 ; double 3.37971696466424305072e1
 DCD &4081f727, &bb1269e0 ; double 5.74894399780136154732e2
 DCD &40b2f53c, &2873ca7d ; double 4.85323499225324212603e3
 DCD &c0bf3d91, &f999e29c ; double -7.99757021486074881977e3
 DCD &c092970c, &b4595acd ; double -1.18976240672699645984e3
 DCD &c060b49f, &92f82d15 ; double -1.33644479260176609614e2
 DCD &c01ee190, &4f53f0e3 ; double -7.72027706098399146839
 DCD &3fe32e18, &89047ffc ; double 5.99376933681923684816e-1
 DCD &3fee2b5d, &3806f63c ; double 9.42793473651995395102e-1
 DCD &bfc6962e, &fffea900 ; double -1.76458239552921725135e-1
 DCD &40441c01, &589e340d ; double 4.02187910816647686829e1
 DCD &40721ff8, &a4693061 ; double 2.89998203669447377706e2
 DCD &40767529, &6f793bdc ; double 3.59322616075105315758e2
 DCD &40c94b21, &2a47b507 ; double 1.29502591027864382340e4
 DCD &40993067, &d2df42af ; double 1.61210139035076622349e3
 DCD &4076ad9c, &59437c23 ; double 3.62850671065915037161e2
 DCD &403f0bc1, &8cdc58d7 ; double 3.10459220922428720257e1
 DCD &400693e9, &252078d5 ; double 2.82222203259798698483
 DCD &403afd26, &14ac4929 ; double 2.69888623161906799908e1
 DCD &40808f32, &7de38bc6 ; double 5.29899654176428839492e2
 DCD &40b23f5f, &37ea5053 ; double 4.67137194694958725449e3
 DCD &c0c0abf3, &16e8dc2e ; double -8.53589913664580308250e3
 DCD &c0940a5c, &3e63519  ; double -1.28258985862444956183e3
 DCD &c062b2bc, &b6af3155 ; double -1.49585536329434631853e2
 DCD &c0214978, &14c02e9c ; double -8.64349427076313503449
 DCD &3fe11ab7, &190834eb ; double 5.34511135950791582694e-1
 DCD &3ff1c73b, &39ae68cb ; double 1.11114046603920502143
 DCD &bfd726de, &89ea3361 ; double -3.61747393305270448227e-1
 DCD &404485ab, &97d38fbb ; double 4.10442991049780729895e1
 DCD &407158bd, &c132e4c8 ; double 2.77546326826861786685e2
 DCD &4068746f, &6e1e7c3f ; double 1.95638602313558266133e2
 DCD &40c9b8b8, &145d13f0 ; double 1.31694381214473105501e4
 DCD &409a8692, &cbf43c54 ; double 1.69764335614793981222e3
 DCD &4076f68e, &b40887a3 ; double 3.67409839661903049546e2
 DCD &403e8e9a, &f43e26   ; double 3.05570374103828257262e1
 DCD &40044075, &1c98f090 ; double 2.53147337285742679569
 DCD &403411f5, &ac029c9d ; double 2.00701549059273141040e1
 DCD &407e1808, &8afa85ab ; double 4.81502085665323363628e2
 DCD &40b170f8, &684e6bbb ; double 4.46497034158830774686e3
 DCD &c0c1b4af, &3584e1c0 ; double -9.06536882077238988131e3
 DCD &c0957683, &7f4ab411 ; double -1.37362841526721990704e3
 DCD &c064c550, &455e83d6 ; double -1.66166048702811792737e2
 DCD &c0232a70, &fa9f769b ; double -9.58289321133206861703
 DCD &3fde450e, &d273e7a  ; double 4.72964775891319910706e-1
 DCD &3ff44cf3, &25091dd6 ; double 1.26878656832729097559
 DCD &bfd7a946, &d211b17f ; double -3.69706826348895789547e-1
 DCD &4044b254, &d0a779fa ; double 4.13932133500820356176e1
 DCD &407054b2, &8f27fd58 ; double 2.61293593555650204507e2
 DCD &4029def6, &b7aee6ba ; double 1.29354760552408727392e1
 DCD &40ca0c10, &daffd358 ; double 1.33361316833288146881e4
 DCD &409bb208, &d199878c ; double 1.77250861205949604482e3
 DCD &40771c3e, &d93b247b ; double 3.69765343886399648454e2
 DCD &403dc056, &bf395bc5 ; double 2.97513236537013376903e1
 DCD &400337f3, &2efc97eb ; double 2.40231930454591724455
 DCD &402a9c0e, &22c93b3d ; double 1.33047953482288168203e1
 DCD &407ae8fc, &38be6da6 ; double 4.30561577552662470225e2
 DCD &40b08d0e, &8e73137d ; double 4.23705686110711849324e3
 DCD &c0c2b6f7, &41ffc977 ; double -9.58193170163476133894e3
 DCD &c096d6c3, &f2a0d7a3 ; double -1.46169135524097578127e3
 DCD &c066e413, &2a770196 ; double -1.83127339584764456504e2
 DCD &c0256f9f, &7380785  ; double -1.07180101638694029731e1
 DCD &3fda8279, &99fcef32 ; double 4.14213562373095034452e-1
 DCD &3ff6a09e, &667f3bcc ; double 1.41421356237309492343
 DCD &bfd81d17, &6b7d24ab ; double -3.76775603265353253857e-1
 DCD &4044cf4b, &5301b6c1 ; double 4.16194862135284964211e1
 DCD &406e21bc, &5139a233 ; double 2.41054237949910742600e2
 DCD &c0677e4a, &f59e9533 ; double -1.87946650323612260536e2
 DCD &40ca4508, &243ba77d ; double 1.34500636057441533922e4
 DCD &409cb09d, &9708fe04 ; double 1.83615389646578205429e3
 DCD &407717da, &a4faa5ff ; double 3.69490879992576026325e2
 DCD &403d0079, &1a3af3b2 ; double 2.90018478769231435876e1
 DCD &40009261, &f93315be ; double 2.07147593199871860037
 DCD &401b1e4d, &27e05c0d ; double 6.77959120089418565414
 DCD &40779c6d, &b4c43ead ; double 3.77776783720570904279e2
 DCD &40af2cc5, &ed39bf8e ; double 3.99038657551253618294e3
 DCD &c0c3b0da, &cf9352a1 ; double -1.00817094597009145218e4
 DCD &c09827ca, &29bc98c3 ; double -1.54594742483789809739e3
 DCD &c0690c0a, &9d7e2b0b ; double -2.00376295801565305510e2
 DCD &c027ba9d, &64ef7fc3 ; double -1.18644820730550062393e1
 DCD &3fd6e649, &f7d78649 ; double 3.57805721314524094456e-1
 DCD &3ff8bc80, &6b151741 ; double 1.54602090672547398675
 DCD &bfd88208, &e9197499 ; double -3.82936694751899120437e-1
 DCD &40449369, &1fe05b4c ; double 4.11516456456652974794e1
 DCD &406b0f42, &4c666fbc ; double 2.16476843071051803236e2
 DCD &c0796282, &dc41cc50 ; double -4.06156948334716616955e2
 DCD &40ca6391, &79fb3ded ; double 1.35111365350773212413e4
 DCD &409d7f3b, &b342295  ; double 1.88780765992604324310e3
 DCD &4076f4d7, &20bd1a42 ; double 3.67302521456415092871e2
 DCD &403c22de, &e24000fd ; double 2.81362134367236542687e1
 DCD &3ffe9f41, &56c62ddc ; double 1.91388067146441809285
 DCD &3fd88208, &e9197499 ; double 3.82936694751899120437e-1
 DCD &40743da8, &9449b57c ; double 3.23853657043385965153e2
 DCD &40ad204b, &612c600a ; double 3.72814722574875213468e3
 DCD &c0c4a09d, &efda1701 ; double -1.05612338821995090257e4
 DCD &c09964cf, &765139e7 ; double -1.62520259978214176044e3
 DCD &c06b3402, &ff77c48  ; double -2.17625251754159990014e2
 DCD &c02a07e6, &bb016b37 ; double -1.30154322089416449870e1
 DCD &3fd36a08, &355c63dc ; double 3.03346683607342404443e-1
 DCD &3ffa9b66, &290ea1a1 ; double 1.66293922460509002725
 DCD &bfe2a1e5, &c753fe2c ; double -5.82262887299241693739e-1
 DCD &40442d9e, &4518f440 ; double 4.03563925144048880611e1
 DCD &4067866c, &39fbe9b7 ; double 1.88200711242692449332e2
 DCD &c084022a, &5794fac0 ; double -6.40270674861814768519e2
 DCD &40ca679b, &81e0cc5b ; double 1.35192149010656194150e4
 DCD &409e1e68, &b27b980a ; double 1.92760224335780594629e3
 DCD &4076ad1d, &c121f3af ; double 3.62819764263748709254e2
 DCD &403af804, &b6a612a6 ; double 2.69688219218684466227e1
 DCD &3ffbf12e, &2abc1de  ; double 1.74638176959353286222
 DCD &c016818a, &fe7408e3 ; double -5.62650678237170875917
 DCD &4070d4d3, &a586a340 ; double 2.69301671529701707186e2
 DCD &40aafac5, &e81afd10 ; double 3.45338653644885198446e3
 DCD &c0c58412, &987ebe5c ; double -1.10161452787808884750e4
 DCD &c09a8aa0, &bb42b6dc ; double -1.69865696434250912716e3
 DCD &c06d5882, &8fd1b0d  ; double -2.34765873426768308718e2
 DCD &c02c53b8, &22a9b977 ; double -1.41635142166312402168e1
 DCD &3fd007fa, &758626af ; double 2.50486960191305507717e-1
 DCD &3ffc38b2, &f180bdb1 ; double 1.76384252869671009911
 DCD &bfe2d6c7, &27088f5b ; double -5.88718010174925310274e-1
 DCD &40439dfd, &3fae7096 ; double 3.92342910386807233181e1
 DCD &40637859, &cdb3a42e ; double 1.55760962344037977800e2
 DCD &c08bc9fe, &8fd7dfa1 ; double -8.89249297796737778299e2
 DCD &40ca51bc, &3b5f1b35 ; double 1.34754705618746611435e4
 DCD &409e8c36, &ce919bc1 ; double 1.95505352237237116242e3
 DCD &4076471f, &20a0b7b2 ; double 3.56445099475672691369e2
 DCD &4039e51b, &a374bd22 ; double 2.58949529800421558434e1
 DCD &3ff91caf, &7b7ff604 ; double 1.56950329057815540779
 DCD &c0265d27, &2ebd47f8 ; double -1.11819395643287720077e1
 DCD &406ad9e2, &caff209  ; double 2.14808843940394837091e2
 DCD &40a8c254, &2ad0a97  ; double 3.16916408291582365564e3
 DCD &c0c659a9, &20af6e76 ; double -1.14433213099755630537e4
 DCD &c09b94a2, &a88f7188 ; double -1.76515884613161506422e3
 DCD &c06f760c, &fd8c446a ; double -2.51689085744819124102e2
 DCD &c02efec0, &19b0cfc6 ; double -1.54975593593916407542e1
 DCD &3fc975f5, &e0553158 ; double 1.98912367379658006072e-1
 DCD &3ffd906b, &cf328d44 ; double 1.84775906502257303288
 DCD &bfe951fc, &c401704d ; double -7.91258223365284174555e-1
 DCD &4042b264, &8ce40403 ; double 3.73936935532911078894e1
 DCD &405decc4, &60fae10f ; double 1.19699486012457995798e2
 DCD &c091fc61, &f4848ee1 ; double -1.15109565932390273701e3
 DCD &40ca2239, &1ef3b244 ; double 1.33804462570782125113e4
 DCD &409ec994, &b236fa49 ; double 1.97039521108534449922e3
 DCD &4075c050, &4623f5a4 ; double 3.48019598141161850435e2
 DCD &4038bb42, &c183086d ; double 2.47314873642830441725e1
 DCD &3ff62903, &7a8b8756 ; double 1.38501308316377480523
 DCD &c0306be1, &738eb5ac ; double -1.64214088653003926765e1
 DCD &4064219c, &fdaaf7f  ; double 1.61050300528640917719e2
 DCD &40a67caa, &20b50162 ; double 2.87833228078500633274e3
 DCD &c0c71f7e, &e6f73009 ; double -1.18389914235100313817e4
 DCD &c09c7ff1, &8bc17dee ; double -1.82398588468867410484e3
 DCD &c070c491, &670543a3 ; double -2.68285498638690285134e2
 DCD &c030d136, &ff3f28f9 ; double -1.68172454384993876886e1
 DCD &3fc2fcac, &73a6063f ; double 1.48335987538347396919e-1
 DCD &3ffe9f41, &56c62ddc ; double 1.91388067146441809285
 DCD &bfe9795b, &d2d337d0 ; double -7.96064292686191166126e-1
 DCD &40419db9, &16b9bb81 ; double 3.52322109610459008877e1
 DCD &4054013b, &e4e8f5a3 ; double 8.00192806506152436441e1
 DCD &c0964015, &c60ea066 ; double -1.42402126334051126832e3
 DCD &40c9d9e5, &a3d1c09c ; double 1.32357940618696666206e4
 DCD &409ed737, &598cd026 ; double 1.97380405254383504143e3
 DCD &40751fda, &9563e231 ; double 3.37990865125818402248e2
 DCD &40374a06, &58f2c13b ; double 2.32891593544638730862e1
 DCD &3ff64b78, &a2e67fea ; double 1.39342559464420867599
 DCD &c0351983, &f02dbf7e ; double -2.10996694671334736881e1
 DCD &405b1ef1, &672dcd40 ; double 1.08483484072426108469e2
 DCD &40a42f66, &c9c3b912 ; double 2.58370075809129866684e3
 DCD &c0c7d3dc, &f3f3f8b0 ; double -1.21997261948551458772e4
 DCD &c09d491c, &bd4e87bc ; double -1.87427806589797455672e3
 DCD &c071c3f2, &8be71cd2 ; double -2.84246715452941430158e2
 DCD &c0321d1b, &4d490016 ; double -1.81136978438590503515e1
 DCD &3fb936bb, &8c5b2da2 ; double 9.84914033571642477671e-2
 DCD &3fff6297, &cff75cb1 ; double 1.96157056080646108320
 DCD &bfeff621, &e3796d79 ; double -9.98795456205171849895e-1
 DCD &40404812, &f0eb1929 ; double 3.25630780361119107624e1
 DCD &40427aab, &b0d1c208 ; double 3.69583645843704857725e1
 DCD &c09aa84d, &427536d0 ; double -1.70607544882914589834e3
 DCD &40c979a4, &cb734a47 ; double 1.30432874588120157568e4
 DCD &409eb588, &4e25d880 ; double 1.96538311061033164151e3
 DCD &407466e8, &c42fe90e ; double 3.26431827723646051709e2
 DCD &40362cce, &7621c0a  ; double 2.21750187506222928846e1
 DCD &3ff32d9f, &651c90fd ; double 1.19863833901132399440
 DCD &c0395f0a, &1beb7bf1 ; double -2.53712480020439592465e1
 DCD &404cc47c, &d223ede1 ; double 5.75350592303691499296e1
 DCD &40a1e0d6, &75a16aa7 ; double 2.28841886619975002759e3
 DCD &c0c87556, &5778060f ; double -1.25226745443372328737e4
 DCD &c09deb5c, &330f8bf4 ; double -1.91484003853122430883e3
 DCD &c072b432, &d7b1f52e ; double -2.99262412734172244200e2
 DCD &c03360c8, &4c528ea2 ; double -1.93780563069873394966e1
 DCD &3fa92727, &8a3b1161 ; double 4.91268497694672470755e-2
 DCD &3fffd88d, &a3d12527 ; double 1.99036945334439407951
 DCD &40c4ba66, &c38bab81 ; double 1.06128028425776883523e4
 DCD &40b4b628, &88b0233e ; double 5.30215833569393544167e3
 DCD &408d0e35, &e1199308 ; double 9.29776308250236070307e2
 DCD &4086c668, &9bb61e25 ; double 7.28801078245921075904e2
 DCD &40720190, &af1a831  ; double 2.88097666686985633078e2
 DCD &40503ab6, &7196cb55 ; double 6.49173854801750422894e1
 DCD &403e2000, &33a3fba7 ; double 3.01250030780171549338e1
 DCD &401067e4, &3e2e2ebd ; double 4.10145661503673597537
 DCD &40c90266, &1eed19c5 ; double 1.28047978187919452466e4
 DCD &409e6634, &d50c06e0 ; double 1.94555159395973169012e3
 DCD &407396ca, &bcfe4829 ; double 3.13424496644295288661e2
 DCD &4034cd35, &4301b7d7 ; double 2.08015939597315444587e1
 DCD &409f2c9f, &5b0f768d ; double 1.99515562080536915346e3
 DCD &4022006d, &f5b0f769 ; double 9.00083892617449699003
 DCD &c03d33c2, &25cc74d5 ; double -2.92021812080536911083e1

|win|
 KEEP |win|
 DCD &3d50c360, &8a44266  ; double 2.38219173934791296993e-13
 DCD &3d669999, &7e7f85b3 ; double 6.42330587214783425746e-13
 DCD &3d7089c4, &1bb39bf1 ; double 9.40084909404968813781e-13
 DCD &3d73beff, &7aa6ff25 ; double 1.12243502609655590411e-12
 DCD &3d74d38a, &f6e3922b ; double 1.18384032126748109298e-12
 DCD &3d73beff, &7aa6ff25 ; double 1.12243502609655590411e-12
 DCD &3d7089c4, &1bb39bf2 ; double 9.40084909404969015729e-13
 DCD &3d669999, &7e7f85b8 ; double 6.42330587214783930617e-13
 DCD &3d50c360, &8a44270  ; double 2.38219173934791801864e-13
 DCD &3d97ff0a, &65fe13fc ; double 5.45611610894341231090e-12
 DCD &3d95753f, &bd43632c ; double 4.87898519956585220564e-12
 DCD &3d92a652, &35798d9b ; double 4.24044899501736731540e-12
 DCD &3d8f5033, &dff9318a ; double 3.55990909475825198988e-12
 DCD &3d8923bd, &d333ebe0 ; double 2.85804335928807517991e-12
 DCD &3d82f747, &c66ea635 ; double 2.15617762381789796604e-12
 DCD &3d79f5ae, &76e97914 ; double 1.47563772355878304442e-12
 DCD &3d6d73f0, &af844599 ; double 8.37101519010297447360e-13
 DCD &3d524b36, &d35d7e37 ; double 2.59970609632737594537e-13
 DCD &bd97ff0a, &65fe13fc ; double -5.45611610894341231090e-12
 DCD &bd95753f, &bd43632c ; double -4.87898519956585220564e-12
 DCD &bd92a652, &35798d9b ; double -4.24044899501736731540e-12
 DCD &bd8f5033, &dff9318a ; double -3.55990909475825198988e-12
 DCD &bd8923bd, &d333ebe2 ; double -2.85804335928807598770e-12
 DCD &bd82f747, &c66ea635 ; double -2.15617762381789796604e-12
 DCD &bd79f5ae, &76e97914 ; double -1.47563772355878304442e-12
 DCD &bd6d73f0, &af84459a ; double -8.37101519010297548334e-13
 DCD &bd524b36, &d35d7e37 ; double -2.59970609632737594537e-13
 DCD &bd50c360, &8a4427a  ; double -2.38219173934792306735e-13
 DCD &bd669999, &7e7f85bc ; double -6.42330587214784334514e-13
 DCD &bd7089c4, &1bb39bf5 ; double -9.40084909404969621574e-13
 DCD &bd73beff, &7aa6ff25 ; double -1.12243502609655590411e-12
 DCD &bd74d38a, &f6e3922b ; double -1.18384032126748109298e-12
 DCD &bd73beff, &7aa6ff25 ; double -1.12243502609655590411e-12
 DCD &bd7089c4, &1bb39bf4 ; double -9.40084909404969419626e-13
 DCD &bd669999, &7e7f85b9 ; double -6.42330587214784031591e-13
 DCD &bd50c360, &8a44270  ; double -2.38219173934791801864e-13
 DCD &3d50c360, &8a44266  ; double 2.38219173934791296993e-13
 DCD &3d669999, &7e7f85b3 ; double 6.42330587214783425746e-13
 DCD &3d7089c4, &1bb39bf1 ; double 9.40084909404968813781e-13
 DCD &3d73beff, &7aa6ff25 ; double 1.12243502609655590411e-12
 DCD &3d74d38a, &f6e3922b ; double 1.18384032126748109298e-12
 DCD &3d73beff, &7aa6ff25 ; double 1.12243502609655590411e-12
 DCD &3d7089c4, &1bb39bf1 ; double 9.40084909404968813781e-13
 DCD &3d669999, &7e7f85ba ; double 6.42330587214784132565e-13
 DCD &3d50c360, &8a44270  ; double 2.38219173934791801864e-13
 DCD &3d97ff0a, &65fe13fd ; double 5.45611610894341311869e-12
 DCD &3d95753f, &bd43632c ; double 4.87898519956585220564e-12
 DCD &3d92a652, &35798d9b ; double 4.24044899501736731540e-12
 DCD &3d8f5033, &dff9318d ; double 3.55990909475825320157e-12
 DCD &3d8923bd, &d333ebe0 ; double 2.85804335928807517991e-12
 DCD &3d82f747, &c66ea635 ; double 2.15617762381789796604e-12
 DCD &3d79f5ae, &76e9790f ; double 1.47563772355878203468e-12
 DCD &3d6d73f0, &af84459a ; double 8.37101519010297548334e-13
 DCD &3d524b36, &d35d7e37 ; double 2.59970609632737594537e-13
 DCD &bd9804e4, &9bcec6a8 ; double -5.46131406980975488866e-12
 DCD &bd95a4a6, &671832bb ; double -4.92108577052405539814e-12
 DCD &bd931a3d, &4482c23d ; double -4.34340503709183840084e-12
 DCD &bd906a9c, &6870362a ; double -3.73266836870768671764e-12
 DCD &bd8b35ff, &14870149 ; double -3.09352384019088489639e-12
 DCD &bd8561c1, &6460d260 ; double -2.43083572732946513244e-12
 DCD &bd7e844c, &bbf65e9f ; double -1.73467901000775093055e-12
 DCD &bd712639, &20972c4a ; double -9.74825365660928080838e-13
 DCD &bd53af69, &3e3cb4c0 ; double -2.79743512016832601728e-13
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &bd501208, &fbcf462f ; double -2.28374824179953086884e-13
 DCD &bd5c69f5, &bb3b176f ; double -4.03785887402068598860e-13
 DCD &bd4e35c0, &9616c86c ; double -2.14654746482532296898e-13
 DCD &3fc0d9fd, &31c98bf7 ; double 1.31652497587395805878e-1
 DCD &3fda8279, &99fcef31 ; double 4.14213562373094978941e-1
 DCD &3fe88df1, &53d6a674 ; double 7.67326987978960151082e-1
 DCD &3ff175ff, &e71f075f ; double 1.09130850106927090870
 DCD &3ff4da02, &d93ab9e7 ; double 1.30322537284120598677
 DCD &3ff91d6e, &9fab8f62 ; double 1.56968557711749001626
 DCD &3ffebc57, &c138aab6 ; double 1.92098212697116599301
 DCD &4003504f, &333f9de4 ; double 2.41421356237309403525
 DCD &40095f6d, &18828236 ; double 3.17159480236321211777
 DCD &40120af7, &2b84120c ; double 4.51070850366205533533
 DCD &401e620d, &5dba72b0 ; double 7.59575411272514600114
 DCD &4036e75d, &2dd1c367 ; double 2.29037655484311493126e1
 DCD &3fef838b, &8c811c17 ; double 9.84807753012208020316e-1
 DCD &3fe491b7, &523c161d ; double 6.42787609686539362919e-1
 DCD &3fd5e3a8, &748a0bf7 ; double 3.42020143325668823930e-1
 DCD &3fee11f6, &42522d1c ; double 9.39692620785908427905e-1
 DCD &bfc63a1a, &7e0b7388 ; double -1.73648177666930303431e-1
 DCD &bfe8836f, &a2cf5038 ; double -7.66044443118977902429e-1
 DCD &3febb67a, &e8584cab ; double 8.66025403784438707611e-1
 DCD &3fe00000, &0        ; double 0.5
 DCD &bfe076bf, &cd6fbecc ; double -5.14495755427526457737e-1
 DCD &bfde30db, &485db65f ; double -4.71731968564972292679e-1
 DCD &bfd40e60, &4f4701fd ; double -3.13377454203901895102e-1
 DCD &bfc748ee, &85851aed ; double -1.81913199610981207721e-1
 DCD &bfb83603, &a7f25359 ; double -9.45741925264206445556e-2
 DCD &bfa4f970, &dd8206d0 ; double -4.09655828853040526738e-2
 DCD &bf8d1423, &9d59a7c1 ; double -1.41985685724711502981e-2
 DCD &bf6e4f68, &c708d3f3 ; double -3.69997467376003688275e-3
 DCD &3feb7095, &10f9355  ; double 8.57492925712544207251e-1
 DCD &3fec373a, &fe3fa80c ; double 8.81741997317705195059e-1
 DCD &3fee635b, &9ee7b56f ; double 9.49628649102732924625e-1
 DCD &3fef7750, &2a0dd15a ; double 9.83314592491790095963e-1
 DCD &3fefdb48, &2dd30f5a ; double 9.95517816067585714634e-1
 DCD &3feff91f, &901a8104 ; double 9.99160558178147528707e-1
 DCD &3fefff2c, &98dbe44d ; double 9.99899195244447036579e-1
 DCD &3feffff1, &a52805d1 ; double 9.99993155070280193009e-1
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &0, &0 ; double 0.0
 DCD &3d501208, &fbcf462f ; double 2.28374824179953086884e-13
 DCD &3d5c69f5, &bb3b176f ; double 4.03785887402068598860e-13
 DCD &3d4e35c0, &9616c86c ; double 2.14654746482532296898e-13
 DCD &3d9804e4, &9bcec6a8 ; double 5.46131406980975488866e-12
 DCD &3d95a4a6, &671832bb ; double 4.92108577052405539814e-12
 DCD &3d931a3d, &4482c23d ; double 4.34340503709183840084e-12
 DCD &3d906a9c, &6870362a ; double 3.73266836870768671764e-12
 DCD &3d8b35ff, &14870149 ; double 3.09352384019088489639e-12
 DCD &3d8561c1, &6460d262 ; double 2.43083572732946594023e-12
 DCD &3d7e844c, &bbf65e9f ; double 1.73467901000775093055e-12
 DCD &3d712639, &20972c4a ; double 9.74825365660928080838e-13
 DCD &3d53af69, &3e3cb4c0 ; double 2.79743512016832601728e-13
 DCD &bd97ff0a, &65fe13fd ; double -5.45611610894341311869e-12
 DCD &bd95753f, &bd43632c ; double -4.87898519956585220564e-12
 DCD &bd92a652, &35798d9b ; double -4.24044899501736731540e-12
 DCD &bd8f5033, &dff9318d ; double -3.55990909475825320157e-12
 DCD &bd8923bd, &d333ebe0 ; double -2.85804335928807517991e-12
 DCD &bd82f747, &c66ea635 ; double -2.15617762381789796604e-12
 DCD &bd79f5ae, &76e9790f ; double -1.47563772355878203468e-12
 DCD &bd6d73f0, &af84459a ; double -8.37101519010297548334e-13
 DCD &bd524b36, &d35d7e37 ; double -2.59970609632737594537e-13
 DCD &bd50c360, &8a44266  ; double -2.38219173934791296993e-13
 DCD &bd669999, &7e7f85b3 ; double -6.42330587214783425746e-13
 DCD &bd7089c4, &1bb39bf1 ; double -9.40084909404968813781e-13
 DCD &bd73beff, &7aa6ff25 ; double -1.12243502609655590411e-12
 DCD &bd74d38a, &f6e3922b ; double -1.18384032126748109298e-12
 DCD &bd73beff, &7aa6ff25 ; double -1.12243502609655590411e-12
 DCD &bd7089c4, &1bb39bf1 ; double -9.40084909404968813781e-13
 DCD &bd669999, &7e7f85ba ; double -6.42330587214784132565e-13
 DCD &bd50c360, &8a44270  ; double -2.38219173934791801864e-13

|order|
 KEEP |order|
 DCD 0
 DCD 1
 DCD 16
 DCD 17
 DCD 8
 DCD 9
 DCD 24
 DCD 25
 DCD 4
 DCD 5
 DCD 20
 DCD 21
 DCD 12
 DCD 13
 DCD 28
 DCD 29
 DCD 2
 DCD 3
 DCD 18
 DCD 19
 DCD 10
 DCD 11
 DCD 26
 DCD 27
 DCD 6
 DCD 7
 DCD 22
 DCD 23
 DCD 14
 DCD 15
 DCD 30
 DCD 31

 END